Skip to content

z3: fix empty libz3.so on musl targets and revbump llvm#61400

Closed
hystericca wants to merge 1 commit into
void-linux:masterfrom
hystericca:fix-llvm-z3
Closed

z3: fix empty libz3.so on musl targets and revbump llvm#61400
hystericca wants to merge 1 commit into
void-linux:masterfrom
hystericca:fix-llvm-z3

Conversation

@hystericca

@hystericca hystericca commented Jul 8, 2026

Copy link
Copy Markdown

The current libz3 package on aarch64-musl contains a literal 0-byte empty libz3.so file

This completely breaks the LLVM toolchain on aarch64-musl as libLLVM.so attempts to load the empty library and crashes with symbol not found

Revbumping z3 and the llvm* suite forces a rebuild to generate the proper 29MB shared library and relink the dependents. I've tested a local xbps-src native build of this exact tree on aarch64-musl and confirmed it generates the library properly

Testing the changes

  • I tested the changes in this PR: YES

Local build testing

  • I built this PR locally for my native architecture, (ARCH-LIBC)
  • I built this PR locally for these architectures (if supported. mark crossbuilds):
    • aarch64-musl

@hystericca hystericca changed the title llvm*: revbump for z3 4.16.0 llvm*: revbump for z3 4.16.0 and fix broken symlink Jul 8, 2026
@hystericca hystericca changed the title llvm*: revbump for z3 4.16.0 and fix broken symlink z3: fix empty libz3.so on musl targets and revbump llvm Jul 8, 2026
@Duncaen

Duncaen commented Jul 8, 2026

Copy link
Copy Markdown
Member

This seems wrong, there are no symlinks. That libz3.so is the library.

@Duncaen

Duncaen commented Jul 8, 2026

Copy link
Copy Markdown
Member
[duncaen@a-fsn-de ~]$ bsdtar tvf /srv/www/void-repo/current/aarch64/z3-4.16.0_1.aarch64-musl.xbps
-rwxr-xr-x  0 0      0         841 Feb 20 19:41 ./REMOVE
-rwxr-xr-x  0 0      0         843 Feb 20 19:41 ./INSTALL
-rw-r--r--  0 root   root     1547 Jan  1  1970 ./props.plist
-rw-r--r--  0 root   root     4771 Jan  1  1970 ./files.plist
-rw-r--r--  0 0      0        1096 Feb 20 19:41 ./usr/share/licenses/z3/LICENSE.txt
-rw-r--r--  0 0      0       11466 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/z3util.py
-rw-r--r--  0 0      0        4883 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/z3types.py
-rw-r--r--  0 0      0        5039 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/z3rcf.py
-rw-r--r--  0 0      0       46305 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/z3printer.py
-rw-r--r--  0 0      0        1113 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/z3poly.py
-rw-r--r--  0 0      0       16384 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/z3num.py
-rw-r--r--  0 0      0      203872 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/z3core.py
-rw-r--r--  0 0      0        8016 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/z3consts.py
-rw-r--r--  0 0      0      353755 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/z3.py
lrwxrwxrwx  0 0      0           0 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/lib/libz3.so -> ../../../../libz3.so
-rw-r--r--  0 0      0         210 Feb 20 19:41 ./usr/lib/python3.14/site-packages/z3/__init__.py
-rwxr-xr-x  0 0      0      264304 Feb 20 19:41 ./usr/bin/z3_tptp
-rwxr-xr-x  0 0      0    29496792 Feb 20 19:41 ./usr/bin/z3
-rwxr-xr-x  0 0      0       67328 Feb 20 19:41 ./usr/bin/maxsat
[duncaen@a-fsn-de ~]$ bsdtar tvf /srv/www/void-repo/current/aarch64/libz3-4.16.0_1.aarch64-musl.xbps
-rw-r--r--  0 root   root     1364 Jan  1  1970 ./props.plist
-rw-r--r--  0 root   root      632 Jan  1  1970 ./files.plist
-rwxr-xr-x  0 0      0    29308352 Feb 20 19:41 ./usr/lib/libz3.so
[duncaen@a-fsn-de ~]$ bsdtar tvf /srv/www/void-repo/current/aarch64/z3-devel-4.16.0_1.aarch64-musl.xbps
-rw-r--r--  0 root   root     1009 Jan  1  1970 ./props.plist
-rw-r--r--  0 root   root     3699 Jan  1  1970 ./files.plist
-rw-r--r--  0 0      0         192 Feb 20 19:41 ./usr/include/z3_version.h
-rw-r--r--  0 0      0        2220 Feb 20 19:41 ./usr/include/z3_v1.h
-rw-r--r--  0 0      0        4459 Feb 20 19:41 ./usr/include/z3_spacer.h
-rw-r--r--  0 0      0        9960 Feb 20 19:41 ./usr/include/z3_rcf.h
-rw-r--r--  0 0      0        1056 Feb 20 19:41 ./usr/include/z3_polynomial.h
-rw-r--r--  0 0      0       13798 Feb 20 19:41 ./usr/include/z3_optimization.h
-rw-r--r--  0 0      0         389 Feb 20 19:41 ./usr/include/z3_macros.h
-rw-r--r--  0 0      0       43932 Feb 20 19:41 ./usr/include/z3_fpa.h
-rw-r--r--  0 0      0       14123 Feb 20 19:41 ./usr/include/z3_fixedpoint.h
-rw-r--r--  0 0      0        5735 Feb 20 19:41 ./usr/include/z3_ast_containers.h
-rw-r--r--  0 0      0      273238 Feb 20 19:41 ./usr/include/z3_api.h
-rw-r--r--  0 0      0        7193 Feb 20 19:41 ./usr/include/z3_algebraic.h
-rw-r--r--  0 0      0         495 Feb 20 19:41 ./usr/include/z3.h
-rw-r--r--  0 0      0      212208 Feb 20 19:41 ./usr/include/z3++.h

@hystericca

hystericca commented Jul 8, 2026

Copy link
Copy Markdown
Author

so it was just packaged as a 0 byte file then? how?

@Duncaen

Duncaen commented Jul 8, 2026

Copy link
Copy Markdown
Member

I don't see it having 0 bytes, check your system with xbps-pkgdb -a.

@hystericca

Copy link
Copy Markdown
Author

yeah I just checked, I guess somehow when I downloaded the packages they got corrupted twice? sorry about that

@hystericca hystericca closed this Jul 8, 2026
@Duncaen

Duncaen commented Jul 8, 2026

Copy link
Copy Markdown
Member

Packages are signature verified, its not possible to download and install a corrupt package. But maybe some filesystem or memory issue or simply some other program could've overwritten files.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants